package com.cos.students.bo;

/**
 * @author: COS
 * @time: 2022/10/27 11:20
 * @description:
 */
public class SelectCourseBO {
    public static boolean check(String xuanXiu, String yiYou) {
        // 同一时间 直接返回 true
        if (xuanXiu.equals(yiYou)) {
            return true;
        }
        String[] chose = xuanXiu.split("-");
        String[] exists = yiYou.split("-");
        //[1, 2, 3]
        //[1, 1, 2]
        //是否为同一天的课程
        if (!chose[0].equals(exists[0])) {
            //不是同一天直接不重合
            return false;
        }
        // 统一天 课程有可能重合
        // 选修
        Integer num1 = Integer.valueOf(chose[1]);
        // 已有
        Integer num2 = Integer.valueOf(exists[1]);
        // 选修课的节数 大于 已有课 代表 选修课在已有的后面上\
        if (num1 > num2) {
            System.out.println("选修在已有的下面上课");
            // 已有课的节数 + 课时 > 选修课的节数 时间就重合了
            Integer times = Integer.valueOf(exists[2]);
            // 直接判断 num2+times (已有课的节数+课时) , num1(选修课的节数)
            return checkNum(num2 + times, num1);
        } else {
            System.out.println("已有在选修的下面上课");
            // 已有课在 选修课下面
            Integer times = Integer.valueOf(chose[2]);
            return checkNum(num1 + times, num2);
        }
    }
    /**
     *
     * @author: COS
     * @return:
     * @time: 2022/10/27 10:50
     * @description:
     *  true 就是 课程时间重合
     *  false 就是课程时间不重合
     */
    public static boolean checkNum(Integer num1, Integer num2) {
        if (num1 > num2) {
            return true;
        }
        return false;
    }
}
